`:top
`!ASP.NET MVC`! is a `F33f`_`[web application framework`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Web_application_framework]`_`f developed by Microsoft that implements the `F33f`_`[model–view–controller`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Model–view–controller]`_`f (MVC) pattern. It is no longer in active development. It is `F33f`_`[open-source software`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Open-source_software]`_`f, apart from the ASP.NET Web Forms component, which is `F33f`_`[proprietary`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Proprietary_software]`_`f.
`F33f`_`[ASP.NET Core`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET_Core]`_`f has since been released, which unified `F33f`_`[ASP.NET`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET]`_`f, ASP.NET MVC, ASP.NET Web API, and `F33f`_`[ASP.NET Web Pages`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET_Web_Pages]`_`f (a platform using only `F33f`_`[Razor`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET_Razor]`_`f pages). MVC 6 was abandoned due to Core and is not expected to be released. Core is currently planned to merge into ".NET 5".`:cite-ref-4[`F5bf`_`[4`#cite-note-4]`_`f]
Some well known sites that use ASP.NET MVC include `F33f`_`[Stack Overflow`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Stack_Overflow]`_`f,`:cite-ref-5[`F5bf`_`[5`#cite-note-5]`_`f] `F33f`_`[Microsoft`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Microsoft]`_`f, `F33f`_`[GoDaddy`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=GoDaddy]`_`f and `F33f`_`[Ancestry.com`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Ancestry.com]`_`f.`:cite-ref-6[`F5bf`_`[6`#cite-note-6]`_`f]
>>Contents
• `F0af`_`[Background`#background]`_`f
• `F0af`_`[Apache License 2.0 release`#apache-license-2-0-release]`_`f
• `F0af`_`[Release history`#release-history]`_`f
• `F0af`_`[Project structure`#project-structure]`_`f
• `F0af`_`[View engines`#view-engines]`_`f
• `F0af`_`[See also`#see-also]`_`f
• `F0af`_`[References`#references]`_`f
• `F0af`_`[Further reading`#further-reading]`_`f
• `F0af`_`[External links`#external-links]`_`f
-─
>>Background
Based on `F33f`_`[ASP.NET`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET]`_`f, ASP.NET MVC allows software developers to build a `F33f`_`[web application`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Web_application]`_`f as a composition of three roles: `*Model`*, `*View`* and `*Controller`*. The MVC model defines web applications with 3 logic layers:
• Model (business layer)
• View (display layer)
• Controller (input control)
A `*model`* represents the state of a particular aspect of the application. A `*controller`* handles interactions and updates the model to reflect a change in state of the application, and then passes information to the view. A `*view`* accepts necessary information from the controller and renders a user interface to display that information.`:cite-ref-aspnetmvc-7-0[`F5bf`_`[7`#cite-note-aspnetmvc-7]`_`f]
In April 2009, the ASP.NET MVC source code was released under the `F33f`_`[Microsoft Public License`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Microsoft_Public_License]`_`f (MS-PL).`:cite-ref-opensource-8-0[`F5bf`_`[8`#cite-note-opensource-8]`_`f]
"ASP.NET MVC framework is a lightweight,`:cite-ref-9[`F5bf`_`[9`#cite-note-9]`_`f] highly testable presentation framework that is integrated with existing ASP.NET features. Some of these integrated features are master pages and membership-based authentication. The MVC framework is defined in the System.Web.Mvc assembly."`:cite-ref-10[`F5bf`_`[10`#cite-note-10]`_`f]
The ASP.NET MVC framework couples the models, views, and controllers using `F33f`_`[interface`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Interface_(object-oriented_programming)]`_`f-based contracts, thereby allowing each component to be tested independently.
>>>Apache License 2.0 release
In March 2012, `F33f`_`[Scott Guthrie`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Scott_Guthrie]`_`f announced on his blog that Microsoft had released part of its web stack (including ASP.NET MVC, `F33f`_`[Razor`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET_Razor]`_`f and Web API) under an open source license (`F33f`_`[Apache License 2.0`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Apache_License_2.0]`_`f).`:cite-ref-opensource1-11-0[`F5bf`_`[11`#cite-note-opensource1-11]`_`f]
Guthrie wrote that "Doing so will enable a more open development model where everyone in the community will be able to engage and provide feedback on code checkins, bug-fixes, new feature development, and build and test the products on a daily basis using the most up-to-date version of the source code and tests."
The source code now resides on `F33f`_`[CodePlex`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=CodePlex]`_`f. ASP.NET Web Forms was not included in this initiative for various reasons.`:cite-ref-op-12-0[`F5bf`_`[12`#cite-note-op-12]`_`f]
>>Release history
`t
| Date | Version |
|---|---|
| 10 December 2007 | ASP.NET MVC CTP |
| 13 March 2009 | ASP.NET MVC 1.0 [ 13 ] |
| 16 December 2009 | ASP.NET MVC 2 RC [ 14 ] |
| 4 February 2010 | ASP.NET MVC 2 RC 2 [ 15 ] |
| 10 March 2010 | ASP.NET MVC 2 [ 16 ] |
| 6 October 2010 | ASP.NET MVC 3 Beta [ 17 ] |
| 9 November 2010 | ASP.NET MVC 3 RC [ 17 ] |
| 10 December 2010 | ASP.NET MVC 3 RC 2 [ 18 ] |
| 13 January 2011 | ASP.NET MVC 3 [ 19 ] |
| 20 September 2011 | ASP.NET MVC 4 Developer Preview [ 20 ] |
| 15 February 2012 | ASP.NET MVC 4 Beta [ 21 ] |
| 31 May 2012 | ASP.NET MVC 4 RC [ 22 ] |
| 15 August 2012 | ASP.NET MVC 4 [ 23 ] |
| 30 May 2013 | ASP.NET MVC 4 4.0.30506.0 [ 24 ] |
| 26 June 2013 | ASP.NET MVC 5 Preview [ 25 ] |
| 23 August 2013 | ASP.NET MVC 5 RC 1 [ 26 ] |
| 17 October 2013 | ASP.NET MVC 5 [ 26 ] |
| 17 January 2014 | ASP.NET MVC 5.1 [ 26 ] |
| 10 February 2014 | ASP.NET MVC 5.1.1 [ 26 ] |
| 4 April 2014 | ASP.NET MVC 5.1.2 [ 26 ] |
| 22 June 2014 | ASP.NET MVC 5.1.3 [ 26 ] |
| 1 July 2014 | ASP.NET MVC 5.2.0 [ 26 ] |
| 28 August 2014 | ASP.NET MVC 5.2.2 [ 26 ] |
| 9 February 2015 | ASP.NET MVC 5.2.3 [ 26 ] |
| 12 February 2018 | ASP.NET MVC 5.2.4 [ 27 ] |
| 2 May 2018 | ASP.NET MVC 5.2.5 [ 28 ] |
| 11 May 2018 | ASP.NET MVC 5.2.6 [ 26 ] |
| 29 November 2018 | ASP.NET MVC 5.2.7 [ 26 ] |
| 12 April 2022 | ASP.NET MVC 5.2.8 [ 26 ] |
| 31 May 2022 | ASP.NET MVC 5.2.9 [ 26 ] |
| 23 October 2023 | ASP.NET MVC 5.3.0 (Current) |
`t
>>Project structure
• 📁 Application
• 📁 Controllers
• 🗎 PetController.cs
• 📁 Models
• 🗎 PetViewModel.cs
• 📁 Views
• 📁 Pet
• 🗎 Create.cshtml
• 🗎 Delete.cshtml
• 🗎 Edit.cshtml
• 🗎 Index.cshtml
>>View engines
The view engines used in the ASP.NET MVC 3 and MVC 4 frameworks are `F33f`_`[Razor`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ASP.NET_Razor]`_`f and the Web Forms.`:cite-ref-29[`F5bf`_`[29`#cite-note-29]`_`f]`:cite-ref-30[`F5bf`_`[30`#cite-note-30]`_`f] Both view engines are part of the MVC 3 framework. By default, the view engine in the MVC framework uses Razor `B100`F9d9.cshtml`f`b and `B100`F9d9.vbhtml`f`b, or Web Forms `B100`F9d9.aspx`f`b pages to design the layout of the user interface pages onto which the data is composed. However, different view engines can be used.`:cite-ref-31[`F5bf`_`[31`#cite-note-31]`_`f] Additionally, rather than the default ASP.NET Web Forms `F33f`_`[postback`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Postback]`_`f model, any interactions are routed to the controllers using the ASP.NET `F33f`_`[Routing`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=URL_mapping]`_`f mechanism. Views can be mapped to different `F33f`_`[URLs`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Uniform_Resource_Locator]`_`f.`:cite-ref-aspnetmvc-7-1[`F5bf`_`[7`#cite-note-aspnetmvc-7]`_`f]
Other view engines:
• The MVCContrib library contains 8 alternate view engines. Brail, NDjango, NHaml, NVelocity, SharpTiles, Spark, StringTemplate and XSLT.`:cite-ref-32[`F5bf`_`[32`#cite-note-32]`_`f]
• The StringTemplate View Engine utilizes a .NET port of the Java templating engine, StringTemplate.`:cite-ref-33[`F5bf`_`[33`#cite-note-33]`_`f]
• Spark is a view engine for the ASP.NET MVC (and the Castle Project MonoRail) frameworks.`:cite-ref-34[`F5bf`_`[34`#cite-note-34]`_`f]
• NDjango is a port of the `F33f`_`[Django`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Django_(web_framework)]`_`f web framework's templating language to .NET. It is written in F# and comes with Visual Studio extension including full Intellisense support.`:cite-ref-35[`F5bf`_`[35`#cite-note-35]`_`f]
• `F33f`_`[Naked Objects for .NET`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Naked_Objects_for_.NET]`_`f is an implementation of the `F33f`_`[naked objects`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Naked_objects]`_`f pattern using ASP.NET MVC.
>>See also
• `F33f`_`[Model–view–viewmodel`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Model–view–viewmodel]`_`f
• `F33f`_`[Model–view–adapter`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Model–view–adapter]`_`f
• `F33f`_`[Model–view–presenter`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Model–view–presenter]`_`f
• `F33f`_`[Observer pattern`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Observer_pattern]`_`f
• `F33f`_`[Presentation–abstraction–control`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Presentation–abstraction–control]`_`f
• `F33f`_`[Hierarchical model–view–controller`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=Hierarchical_model–view–controller]`_`f
>>References
`:cite-note-1`!1.`! "Nuget package Microsoft.AspNet.Mvc". Retrieved 10 January 2025.
`:cite-note-2`!2.`! "MVC Releases". `*Official Microsoft ASP.NET Site`*. Retrieved 18 May 2016.
`:cite-note-3`!3.`! `:citerefrick-anderson`aRick Anderson. "Intro to ASP.NET MVC 3 (VB)". `*The Official Microsoft ASP.NET Site`*. Retrieved 17 January 2015.
`:cite-note-4`!4.`! `F0af`_`[↑`#cite-ref-4]`_`f "Introducing .NET 5". 6 May 2019.
`:cite-note-5`!5.`! `F0af`_`[↑`#cite-ref-5]`_`f "What Was Stack Overflow Built With?". 21 September 2008.
`:cite-note-6`!6.`! `F0af`_`[↑`#cite-ref-6]`_`f "Top 10 Websites Written Using ASP.NET MVC - DZone Web Dev".
`:cite-note-aspnetmvc-7`!7.`! `F0af`_`[↑`#cite-ref-aspnetmvc-7-0]`_`f `:citerefscott-guthrie2007`aScott Guthrie (15 October 2007). "ASP.NET MVC Framework". Archived from the original on 22 October 2007. Retrieved 23 October 2007.
`:cite-note-opensource-8`!8.`! `F0af`_`[↑`#cite-ref-opensource-8-0]`_`f `:citerefscott-guthrie2009`aScott Guthrie (2 April 2009). "ASP.NET mvc 1.0 Source Released". Archived from the original on 3 April 2009. Retrieved 2 April 2009.
`:cite-note-9`!9.`! `F0af`_`[↑`#cite-ref-9]`_`f `:citerefkoirala2014`aKoirala, Shivprasad (27 September 2014). "Webform vs MVC performance comparison done with 25 user load test". `*codeproject`*. Retrieved 27 September 2014.
`:cite-note-10`!10.`! `F0af`_`[↑`#cite-ref-10]`_`f "ASP.NET MVC". `*aspnet4.com`*. Archived from the original on 4 April 2014. Retrieved 17 January 2015.
`:cite-note-opensource1-11`!11.`! `F0af`_`[↑`#cite-ref-opensource1-11-0]`_`f `:citerefscott-guthrie2012`aScott Guthrie (28 March 2012). "ASP.NET MVC, Web API, Razor and Open Source". Retrieved 29 March 2012.
`:cite-note-op-12`!12.`! `F0af`_`[↑`#cite-ref-op-12-0]`_`f `:citerefscott-hanselman`aScott Hanselman. "ASP.NET MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 (Razor) now all open source with contributions". Retrieved 29 March 2012.
`:cite-note-13`!4.`! "Download ASP.NET MVC 1.0 from Official Microsoft Download Center". Microsoft. Archived from the original on 30 May 2012. Retrieved 17 January 2015.
`:cite-note-14`!5.`! `:citerefphil-haack2009`aPhil Haack (16 December 2009). "ASP.NET MVC 2 RC Released". Retrieved 17 January 2015.
`:cite-note-15`!6.`! `:citerefphil-haack2010`aPhil Haack (4 February 2010). "ASP.NET MVC 2 RC 2 Released". Retrieved 17 January 2015.
`:cite-note-16`!7.`! "Download ASP.NET MVC 2 RTM from Official Microsoft Download Center". Microsoft. Retrieved 17 January 2015.
`:cite-note-asp-net-17`!8.`! "ASP.NET MVC 3". `*The Official Microsoft ASP.NET Site`*. Retrieved 17 January 2015.
`:cite-note-18`!9.`! "Announcing ASP.NET MVC 3 (Release Candidate 2)". ScottGu's Blog. `*weblogs.asp.net`*. 11 December 2010. Retrieved 17 January 2015.
`:cite-note-19`!10.`! "Download ASP.NET MVC 3 RTM from Official Microsoft Download Center". Microsoft. Retrieved 17 January 2015.
`:cite-note-20`!11.`! "ASP.NET". `*CodePlex`*. Retrieved 17 January 2015.
`:cite-note-21`!12.`! "ASP.NET MVC 4". `*The Official Microsoft ASP.NET Site`*. Retrieved 17 January 2015.
`:cite-note-22`!13.`! "MSDN Blogs". Microsoft. Retrieved 17 January 2015.
`:cite-note-23`!14.`! "MSDN Blogs". Microsoft. Retrieved 17 January 2015.
`:cite-note-24`!15.`! "ASP.NET and Web Tools 2012.2 Release Notes". `*The Official Microsoft ASP.NET Site`*. Archived from the original on 10 January 2015. Retrieved 17 January 2015.
`:cite-note-25`!16.`! `:citerefmicrosoft-asp-net-team`aMicrosoft ASP.NET Team. "ASP.NET and Web Tools for Visual Studio 2013 Release Notes". `*The Official Microsoft ASP.NET Site`*. Retrieved 17 January 2015.
`:cite-note-nuget-org-26`!17.`! "Microsoft ASP.NET MVC 5.2.2". `*`F33f`_`[NuGet`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=NuGet]`_`f`*. Retrieved 17 January 2015.
`:cite-note-27`!18.`! "Announcing ASP.NET MVC 5.2.4, Web API 5.2.4, and Web Pages 3.2.4". Microsoft. 12 February 2018. Retrieved 14 March 2018.
`:cite-note-28`!19.`! "Announcing ASP.NET MVC 5.2.5, Web API 5.2.5, and Web Pages 3.2.5". Microsoft. 2 May 2018. Retrieved 4 May 2018.
`:cite-note-29`!29.`! `F0af`_`[↑`#cite-ref-29]`_`f "ScottGu's Blog - Introducing "Razor" – a new view engine for ASP.NET". `*asp.net`*. 3 July 2010.
`:cite-note-30`!30.`! `F0af`_`[↑`#cite-ref-30]`_`f "ASP.NET MVC 3". `*The Official Microsoft ASP.NET Site`*. 15 June 2023.
`:cite-note-31`!31.`! `F0af`_`[↑`#cite-ref-31]`_`f "Scott Hanselman's ASP.NET MVC Preview 2 Screencast Tutorials". Archived from the original on 29 October 2008. Retrieved 13 October 2008.
`:cite-note-32`!32.`! `F0af`_`[↑`#cite-ref-32]`_`f MVCContrib
`:cite-note-33`!33.`! `F0af`_`[↑`#cite-ref-33]`_`f "string-template-view-engine-mvc - ASP.Net MVC ViewEngine for StringTemplate - Google Project Hosting". `*google.com`*.
`:cite-note-34`!34.`! `F0af`_`[↑`#cite-ref-34]`_`f "Spark View Engine". `*CodePlex`*. Archived from the original on 11 January 2018. Retrieved 15 March 2013.
`:cite-note-35`!35.`! `F0af`_`[↑`#cite-ref-35]`_`f "ndjango - An implementation of the Django Template Language on the .NET platform, using the F# language. - Google Project Hosting". `*google.com`*.
>>Further reading
• Jon Galloway, Phil Haack, Brad Wilson, and K. Scott Allen, `*Professional ASP.NET MVC 3`*, Wrox, 2011, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-118-07658-3
• Jeffrey Palermo, Jimmy Bogard, Eric Hexter, Matthew Hinze, and Jeremy Skinner, `*ASP.NET MVC 4 in Action`*, Manning Publications, 2012, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-1617-29041-1
• Steven Sanderson, Adam Freeman, `*Pro ASP.NET MVC 3 Framework, Second Edition`*, Apress, 2011, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-4302-3404-0
• Jonathan McCracken, `*Test-Drive ASP.NET MVC`*, Pragmatic Bookshelf, 2010, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-934356-53-0
• Stephen Walther, `*ASP.NET MVC Framework Unleashed`*, Sam's, 2009, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 0-672-32998-0
• Arnaud Weil, `*Learn ASP.NET MVC`*, 2015, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 1-32648303-X
• Andrew Lock, `*ASP.NET Core in Action`*, Manning Publications, 2018, `F33f`_`[ISBN`:/page/wikibook/entry.mu`zim=wikipedia_en_all_nopic_2025-08.zim|entry_path=ISBN_(identifier)]`_`f 978-1617-29461-7
>>External links
• Official website
`c`F0af`_`[↑ Back to top`#top]`_`f`a